In recent years, a software structure such as the one in Japanese patent document JP-A-2001-109628 is proposed for improving an efficiency of reuse of an application software on various different platforms.
That is, in the software structure disclosed above, each of plural components in the application software is configured to have an interface and a body to implement a certain function, and is used to compose the application software in a framework that the components in the application software operate independently with each other. In this manner, the reuse of the application software and independency of platforms (hardware) are both realized.
Further, the reuse of the software is enabled by using an independent trigger design policy that a trigger, i.e., an event routine (e.g., a type of a script program), for triggering a process in the component is designed independently for each of the components.
However, in designing a vehicle control system, the reuse of the software cannot be realized by only designing the trigger independently for each of the components. This is because the software design of each of the triggers must take a corresponding hardware that generates each of the triggers into consideration.
For example, when a trigger is periodically generated, that is, when a certain function being triggered by the trigger is periodically used, a timer function of a microprocessor is used to give generation timings for the trigger in general. In addition, when the trigger is used in synchronization with a function implemented by other ECU, synchronicity of a time-trigger type communication protocol such as FlexRay is used for triggering. That is, for example, when the trigger is used periodically in synchronization with a function implemented by other ECU, the timer in a communication controller is used for generating the trigger. Further, when the trigger is used in synchronization with a control request from a function implemented by other ECU, reception of the control request trough a network is used for generating the trigger.
Therefore, in the trigger design of vehicle control scheme, consideration of the corresponding hardware is required for all of the above-described cases. As a result, when the hardware for implementing a specific function (i.e., for implementing an application software) is changed, the corresponding trigger has to be re-designed.